Jump to content

Talk:Video coding format

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia

Examples

[edit]

I think there could be better examples of codecs and container formats:

  • The article currently mentions x264 as an example of a video codec. x264 is only an encoder, so it is at least questionable whether it can be called a codec ("coder/decoder"—yes, Wikipedia allows calling a decoder or encoder a codec with its "and/or" definition in video codec, but not all definitions elsewhere are so liberal, and even Wikipedia says "encoding and decoding" e.g. in Comparison of video codecs). So in order to differentiate between encoders, decoders and encoders/decoders (codecs), I would suggest changing the example to a codec library that can encode and decode. For example, libtheora (the Theora encoding/decoding library, but perhaps too obscure to be a good example), libvpx (the VP8 codec library by Google), Xvid (a popular, very well known example), or the DivX Codec (problematic as an example, because first, "DivX" is just a common brand name for the whole DivX product line, so it should be a specific product name, not "DivX", but there were several products over the years like the DivX Pro Codec etc., and second, because DivX supports both MPEG-4 Part 2 and 10, which would make the DivX example needlessly complicated).
  • WebM was used as an example of a container format. First, WebM is a full file type (file format) which sets an audio, video and a container format as parts of its specification. The container format used in a WebM file is Matroska. So I think WebM is higher-level than a container format (a container format, namely Matroska, is its subset). I changed the wording to "file format", but then, it makes the example pointless and confusing. So I would suggest changing the example to a real (pure) container format like Matroska, AVI, ASF, MP4 or Ogg.—J. M. (talk) 00:02, 15 October 2011 (UTC)[reply]

Please call it algorithm but not format

[edit]

See algorithm. Format is rather a file format or a special container format. Why do we need this article and Video codec? User:ScotXWt@lk 20:59, 27 June 2014 (UTC)[reply]

Because a video codec, as the article explains, is a piece of software or hardware, an implementation. Typically a software library. While video compression format refers to the specification. Two completely different things. The difference between a specification and an implementation is one of the most crucial things to understand in the world of digital technology. And "Video compression format" is perfectly fine. It is actually the bitstream format, the way the produced video bitstream must be formed to meet the specification. You could rename it to "video compression standard", as that's the way it is called in specifications such as H.264, but then you could argue what the word "standard" really means and which specification is "standardized" etc. "Algorithm" is not a good way to call it. Acutally, the implementations—codecs—use algorithms to encode and decode the video. But they are free to use any algorithm they choose to achieve the result. This is especially true with encoders. There are many different encoders made by different people that use the same format. They all use different algorithms and therefore achieve very different results (different picture quality for the same bitrate). The only requirement is that they produce streams in the specified video compression format. Because, again, specification (standard, format description) is not the implementation (codec, a piece of software or hardware that follows the specification), even though, admittedly, many people confuse these two things.—J. M. (talk) 00:58, 28 June 2014 (UTC)[reply]
I called the article "Video compression format" instead of "Video compression standard" when I created it because all the Wikipedia pages for individual specifications called it "Video compression format". I wrote this article to further my own understanding (I was confused about codec vs format, because everybody were using them interchangably, wrongly), so there were absolutely no expert judgement behind the choice of "format" over "standard". While I have the impression that you (J. M.) is a bit more knowledgeable, so feel free to overrule me. Thue (talk) 11:03, 28 June 2014 (UTC)[reply]
Using "format" is more correct than "standard" in this context, because some formats are not standardized. In this context, a "standard" ordinarily refers to a technical standard approved by a standards organization. Sometimes the word "standard" is used more loosely, to refer to a de facto standard, but some formats are not de facto standards either. A de facto standard, per the article on that topic, should be something "that has achieved a dominant position by public acceptance or market forces", although that term is also sometimes used more loosely (esp. by promoters – e.g., to convey a false impression of broad acceptance and approval). Some formats aren't even documented, much less standardized. —Mulligatawny (talk) 21:23, 28 June 2014 (UTC)[reply]
I added a section on why a video compression format is not an algorithm. Thue (talk) 12:47, 28 June 2014 (UTC)[reply]
Well, then please call is "Video compression algorithm". Format is simply wrong. I am aware of the difference between a spec and its implementation. User:ScotXWt@lk 16:18, 28 June 2014 (UTC)[reply]
Read what I and J. M. wrote again. We are both specifically saying a video compression format is NOT a Video compression algorithm. Format is simply right. Thue (talk) 18:39, 28 June 2014 (UTC)[reply]
There is a difference between being a "format" and being a "file format" or a "container format". A format is not necessarily a file format. See, for example, the article Digital container format versus Content format. A "file format" or "container format" is something that may contain other formats within it. It generally defines a "wrapper" for containing different types of data that are each in their own particular formats (e.g., a file may contain an audio format, a video format, a format for subtitles, synchronization information, menu overlay and control data, etc. – sometimes with multiple A/V tracks, each in their own identified format, sometimes with multiple audio tracks or multiple subtitle tracks for the same video track, etc.). I agree that "format" is the correct term to use here. It is certainly incorrect to use "algorithm", since different algorithms can use the same data format. That is especially true for encoders (e.g., since different encoders use different search and decision-making algorithms), but it is also true for decoders as well (e.g., since different decoders use different algorithms for optimization of processing speed, memory usage, degree of parallel-processing, etc.). —Mulligatawny (talk) 21:23, 28 June 2014 (UTC)[reply]
Hmm, this is quite convoluted. The article gives examples: " Examples of video compression formats include MPEG-2 Part 2, MPEG-4 Part 2, H.264 (MPEG-4 Part 10), HEVC, Theora, Dirac, RealVideo RV40, VP8, and VP9". And I still do not know, what this article is supposed to describe. Very convoluted indeed. User:ScotXWt@lk 23:05, 30 June 2014 (UTC)[reply]

Rename to "Video format"?

[edit]

I want to rename the article to "Video format", because it is not all video formats which use compression (Uncompressed video). Limiting this article to only formats using compression seems inelegant.

There does not seem to be a standardized term for the concept, like "Video compression format" was just a description and not standardized, so no reason I can see for not renaming.

Any objections? Thue (talk) 16:55, 30 June 2014 (UTC)[reply]

How about "video coding format"? Coding does not necessarily imply compression. I think "video format" might sound like a file/container format. (Also, I wonder whether it's really necessary to consider uncompressed video to be within the scope of this article.) —Mulligatawny (talk) 19:14, 30 June 2014 (UTC)[reply]
Yeah, uncompressed video is probably outside scope - I added a few appropriate mentions in passing, but that is probably enough. I do like "Video coding format" as a title though, perhaps even better than "Video compression format". Is there no authority that says what the official term is? Thue (talk) 19:23, 30 June 2014 (UTC)[reply]
I think there's a pretty well-established precedent for that "video coding" phrasing in the titles of the two most recent major standards on the topic: the Advanced Video Coding and High Efficiency Video Coding standards – and in the name of one of the committees that developed it – the Video Coding Experts Group. There's also the extension projects known as Scalable Video Coding and Multiview Video Coding. —Mulligatawny (talk) 20:16, 30 June 2014 (UTC)[reply]

delete and redirect to Digital container format

[edit]

Wouldn't it be better to delete the current article and transform it into a redirect to Digital container format? User:ScotXWt@lk 23:07, 30 June 2014 (UTC)[reply]

No – certainly not. Please look at the list of examples ("MPEG-2 Part 2, MPEG-4 Part 2, H.264 (MPEG-4 Part 10), HEVC, Theora, Dirac, RealVideo RV40, VP8, and VP9"). None of those are container formats. You seem to have some misunderstanding of the topic. —Mulligatawny (talk) 00:00, 1 July 2014 (UTC)[reply]
Clearly this article has to exist for people just like you, who have no idea what the clearly defined concept "Video compression format" is :) . You should really try reading it, some time. Thue (talk) 00:03, 1 July 2014 (UTC)[reply]

Overcoverage of WebM

[edit]

Another example is the initial specification for the file type WebM, which specified the container format (Matroska), but also exactly which video (VP8) and audio (Vorbis) compression format is used inside the Matroska container, even though the Matroska container format itself is capable of containing other video coding formats (VP9 video and Opus audio support was later added to the WebM specification).

This strikes me as to heavy and specific for the lead—unless we introduce it with language such as "a video coding file format may be more specific than the container format it designates ..." — MaxEnt 18:57, 16 December 2017 (UTC)[reply]